let fs = require("fs");
const view = process.env.npm_package_config_pages;
module.exports = {
  /**
   * 指定打包输出目录
   */
  outputDir: "special",
  /**
   * js、css、fonts、img等静态资源的目录
   */
  assetsDir: view + "/assets",
  /**
   * html资源位置
   */
  indexPath: view + "/index.html",
  /**
   * 开发环境下保存自动检测代码规范
   */
  lintOnSave: process.env.NODE_ENV !== "production",
  /**
   * css自动转rem配置 1rem=100px
   * 自动添加浏览器前缀
   */
  css: {
    loaderOptions: {
      css: {},
      postcss: {
        plugins: [
          // require("postcss-px2rem")({
          //   remUnit: 100
          // }),
          require("autoprefixer")
        ]
      }
    }
  },
  /**
   * 替换默认main.js入口文件
   */
  chainWebpack: config => {
    // 判断是否有指定页面入口html模版并重新指定
    let tempPath = "./src/pages/" + view + "/template.html";
    if (fs.existsSync(tempPath)) {
      config.plugin("html").tap(args => {
        args[0].meta = { tempPath };
        return args;
      });
    }
    // 更改默认入口js文件
    config
      .entry("app")
      .clear()
      .add("./src/pages/" + view + "/index.js");
  },
  /**
   * 取消生产环境sourceMap，加速生产环境构建
   */
  productionSourceMap: false,
  devServer: {
    /**
     * 自动打开浏览器
     */
    open: true,
    /**
     * 开发环境访问端口号
     */
    port: 80,
    openPage: view,
    /**
     * 浏览器中显示编译的警告和报错信息
     */
    overlay: {
      warnings: true,
      errors: true
    }
  },
  transpileDependencies: ["epg-focus-vue"]
};
